namespace OracleInternal.Json.Common
{
	internal interface IJsonOutput
	{
		void Flush();

		void Write(char c);

		void Write(char[] str, int pos, int count);

		void Write(string str);

		void Write(string value, int pos, int count);

		void WriteAscii(char c);

		void WriteAscii(char[] value);

		void WriteAscii(char[] value, int pos, int count);

		void WriteAscii(byte value);

		void WriteAscii(string str);

		void WriteAscii(string str, int pos, int count);

		void WriteSurrogates(char c1, char c2);

		bool Utf8();

		void Utf8(byte[] array, int offset, int len);

		void Close();
	}
}
